package org.minos.edit
{
	import org.minos.edit.controller.StartupCommand;
	import org.puremvc.as3.interfaces.IFacade;
	import org.puremvc.as3.patterns.facade.Facade;
	
	/**
	 * ...
	 * @author M.ichow
	 */
	public class EditFacate extends Facade
	{
		
		public static const NAME : String = "EditFacate";
		public static const START_UP : String = NAME + "_Startup";
		
		public static const SCENE_SELECTION_CHANGED : String = NAME + "_SceneSelectionChange";
		
		public static const ADD_SCENE_VO : String = NAME + "_AddSceneVO";
		public static const REMOVE_SCENE_VO : String = NAME + "_RemoveSceneVO";
		public static const EDIT_SCENE_VO : String = NAME + "_EditSceneVO";
		//select
		public static const SELECT_PATH : String = NAME + "_SelectPath";
		public static const SELECT_FILE : String = NAME + "_SelectFile";
		public static const SELECT_SCENE : String = NAME + "_SelectScene";
		//assets
		public static const ASSETS_CHANGE : String = NAME + "_AssetsChange";
		//score
		public static const SETTER_SCORE : String = NAME + "_SetterScore";
		//file
		public static const NEW_FILE : String = NAME + "_NewFile";
		public static const OPEN_FILE : String = NAME + "_OpenFile";
		public static const SAVE_FILE : String = NAME + "_SaveFile";
		public static const READ_FILE : String = NAME + "_ReadFile";
		//status
		public static const FILE_CHANGED : String = NAME + "_FileChanged";
		//
		public static const ENABLED : String = NAME + "_Enabled";
		//dialog
		public static const SHOW_DIALOG : String = NAME + "_ShowDialog";
		//pos
		public static const POSITION:String = NAME + "_Position";
		
		public function EditFacate()
		{
		}
		
		public static function getInstance() : EditFacate
		{
			if ( !instance )
				instance = new EditFacate();
			return instance as EditFacate;
		}
		
		override protected function initializeController() : void
		{
			super.initializeController();
			registerCommand( EditFacate.START_UP , StartupCommand );
		}
		
		public function startup( app : Object ) : void
		{
			sendNotification( EditFacate.START_UP , app );
		}
	
	}

}